package com.xuexiang.xdlinkdemo;

import android.app.Application;
import android.content.Context;

import com.xuexiang.xdlink.XDLink;
import com.xuexiang.xdlink.core.OnErrorListener;
import com.xuexiang.xdlink.exception.ConnectException;
import com.xuexiang.xpage.AppPageConfig;
import com.xuexiang.xpage.PageConfig;
import com.xuexiang.xpage.PageConfiguration;
import com.xuexiang.xpage.model.PageInfo;
import com.xuexiang.xutil.XUtil;
import com.xuexiang.xutil.tip.ToastUtils;

import java.util.List;

/**
 * @author xuexiang
 * @since 2018/8/12 下午10:23
 */
public class App extends Application {

    @Override
    public void onCreate() {
        super.onCreate();

        XUtil.init(this);
        XUtil.debug(true);

        PageConfig.getInstance().setPageConfiguration(new PageConfiguration() { //页面注册
            @Override
            public List<PageInfo> registerPages(Context context) {
                return AppPageConfig.getInstance().getPages(); //自动注册页面
            }
        }).debug("PageLog").enableWatcher(true).init(this);

        XDLink.get().debug(true) //开启调试模式，可看到日志
//                .setLogger(new ILogger() {
//                    @Override
//                    public void log(int priority, String tag, String message, Throwable t) {
//                        //..自定义日志记录，不设置的话，默认是输出到logcat
//                    }
//                })
                .setOnErrorListener(new OnErrorListener() { //设置全局出错监听回调，当然局部可以覆盖
                    @Override
                    public void onError(ConnectException exception) {
                        ToastUtils.toast(exception.getMessage());
                    }
                });

    }
}
